Quick check of the first no-genetic data demultiplex sequencing from the pilot. NPCs
library(Seurat)
library(tidyverse)
#library(DoubletFinder)
library(enrichR)
Welcome to enrichR
Checking connection ...
Enrichr ... Connection is Live!
FlyEnrichr ... Connection is available!
WormEnrichr ... Connection is available!
YeastEnrichr ... Connection is available!
FishEnrichr ... Connection is available!
OxEnrichr ... Connection is available!
library(clustree)
Loading required package: ggraph
#library("scClassify")
#library(SingleCellExperiment)
#library("Matrix")
Read in the data
dim(seu)
[1] 33538 17520
table(seu$souporcell_assignment)
0 1 10 11 12 2 3 4 5
1135 1028 426 3134 2494 207 2331 187 307
6 7 8 9 doublet unassigned
381 1192 599 1510 2069 520
Look at the sequencing
VlnPlot(seu, features = c("nCount_RNA","nFeature_RNA"), pt.size = 0.001)
VlnPlot(seu, features = c("nFeature_RNA"), pt.size = 0.001, y.max = 500)
Warning: Removed 16577 rows containing non-finite values (`stat_ydensity()`).
Warning: Removed 16577 rows containing missing values (`geom_point()`).
table(seu$souporcell_status)
doublet singlet unassigned
1820 13603 50
dim(seu)
[1] 33538 15473
Calculate the percent mitochondrial genes
seu$percent.MT %>% summary
Min. 1st Qu. Median Mean 3rd Qu. Max.
0.000 2.578 3.541 4.201 4.591 62.044
VlnPlot(seu, features = "percent.MT", pt.size = 0.001)
VlnPlot(seu, features = "percent.MT", pt.size = 0.001, y.max = 20)
Warning: Removed 339 rows containing non-finite values (`stat_ydensity()`).
Warning: Removed 339 rows containing missing values (`geom_point()`).
I’ll use 10% as a cutoff and check if this removes more of the low read cells. I believe this object is already the CellRanger Filtered object.
VlnPlot(seu, features = c("nCount_RNA","nFeature_RNA"), group.by = "souporcell_status")
# see most of the unassigned have low counts and features and doublets have higher counts and higher features
VlnPlot(seu, features = c("nCount_RNA"), group.by = "souporcell_status", y.max = 5000)
Warning: Removed 14766 rows containing non-finite values (`stat_ydensity()`).
Warning: Removed 14766 rows containing missing values (`geom_point()`).
VlnPlot(seu, features = c("nFeature_RNA"), group.by = "souporcell_status", y.max = 2000)
Warning: Removed 14261 rows containing non-finite values (`stat_ydensity()`).
Warning: Removed 14261 rows containing missing values (`geom_point()`).
I will filter for higher counts and lower counts
dim(seu)
[1] 33538 17520
dim(seu.ft)
[1] 33538 16864
dim(seu.ft2)
[1] 33538 15473
# this removes 1391
VlnPlot(seu.ft2, features = c("nCount_RNA","nFeature_RNA","percent.MT"), pt.size = 0.001)
# how many of each line do we detect
table(seu.ft2$souporcell_assignment)
0 1 10 11 12 2 3 4 5
1021 971 374 2913 2356 74 2165 92 232
6 7 8 9 doublet unassigned
348 1096 548 1413 1820 50
VlnPlot(seu.ft2, features = c("nCount_RNA","nFeature_RNA","percent.MT"), group.by = "souporcell_assignment", pt.size = 0.001)
clean up
seu <- seu.ft2
rm(seu.ft2, seu.ft)
Now the workflow to make clusters
p2
Warning: Transformation introduced infinite values in continuous x-axis
Scale and get PCA
#Linear dimensionality reduction
#Choosing the number of PCs can depend on how many cells you have
seu <- ScaleData(seu)
Centering and scaling data matrix
|
| | 0%
|
|============================== | 33%
|
|============================================================= | 67%
|
|===========================================================================================| 100%
seu <- RunPCA(seu, assay = "RNA", npcs = 30)
PC_ 1
Positive: CKB, TUBB2B, MAP1B, TUBA1A, CRABP1, FZD3, TTYH1, SOX2, HSP90AA1, HMGA1
POU3F2, BEX1, CRMP1, KIF5C, MAP2, RFX4, DRAXIN, SOX11, FGFBP3, HES6
PRTG, SRGAP3, GPM6B, LIN28A, TAGLN3, SYT11, MIAT, ELAVL2, MAP6, NES
Negative: COL3A1, LGALS1, S100A11, LUM, DCN, SPARC, PCOLCE, B2M, COL1A1, CDH11
SERPINH1, APOE, IFITM3, FN1, COL5A2, COL5A1, COL6A2, RRBP1, TIMP1, SELENOM
COLEC12, CALD1, LAPTM4A, BGN, COL6A3, TPM1, COL1A2, EMP3, IFI16, IGFBP4
PC_ 2
Positive: STMN2, DCX, TAGLN3, INA, ELAVL3, STMN4, NEFM, KLHL35, ELAVL4, ONECUT2
SCG3, NHLH1, DCC, SRRM4, SYT1, MLLT11, INSM1, CNTN2, NCAM1, DLL3
ATCAY, SOX4, CDKN1C, TFAP2B, GDAP1L1, GNG3, SSTR2, CLDN5, ELAVL2, KIF5C
Negative: HMGB2, CENPF, TOP2A, CKS1B, MKI67, NUSAP1, BIRC5, TUBA1B, H2AFZ, TPX2
CCNB1, CKS2, H2AFX, ASPM, UBE2C, MAD2L1, SMC4, DLGAP5, GTSE1, PTTG1
PCLAF, TUBB4B, CENPE, TYMS, CDK1, HSPD1, CCNA2, KIF20B, CDC20, KIF11
PC_ 3
Positive: KRT19, KRT8, THY1, S100A10, TM4SF1, NPNT, KRT18, HAND2, MYRF, NNMT
DSG2, RPP25, MATN2, ASPHD1, FXYD5, GATA6, LMCD1, SLC9A3R1, KCNK6, PLP2
LRRN4, PITX1, CYBA, MAN1A1, KDR, BNC1, COL1A1, ANXA1, S100A16, POSTN
Negative: IFI44L, PRRX1, SMOC2, PTH1R, SFRP1, ZIC1, TWIST1, LRRC17, DAB2, COLEC12
CDC42EP5, CPE, TPM1, SLC1A3, NAV3, FOXC1, ID1, IFI44, FRZB, COL26A1
AKAP12, DACT2, PRRX2, NNAT, LAMA4, RND3, FN1, VCAN, TCIM, SIX1
PC_ 4
Positive: TNNI1, DES, NEB, TNNT1, MYL1, KLHL41, TTN, TNNC2, CHRNA1, MYL4
MYOG, MYLPF, ENO3, CDH15, SMPX, ACTC1, TNNT2, MYOD1, AC020909.2, MRLN
IL17B, SGCA, FITM1, SYNPO2L, MYH3, TRIM55, TNNC1, ATP2A1, APOBEC2, SMYD1
Negative: PTN, IGFBP2, CRABP1, GJA1, ZIC2, IFI16, PDLIM1, COL11A1, VCAN, FABP5
TTYH1, SFRP1, IFIT3, DAB2, CLU, SERPING1, PARP14, SOX2, IFITM1, MGP
SMOC2, C7, SFRP2, ARHGAP29, IFI6, CDC42EP5, SLC1A3, CMBL, LIFR, FTH1
PC_ 5
Positive: ASPM, CENPE, TPX2, TOP2A, UBE2C, GTSE1, MKI67, UBE2S, SGO2, DLGAP5
ARL6IP1, KPNA2, PLK1, NUSAP1, AURKA, CCNB1, PIF1, CENPF, NDC80, HMMR
KIF2C, CDK1, KIF20B, CDCA8, DEPDC1, KIF11, TTK, KIF23, CDCA2, CDCA3
Negative: RPL12, VIM, AL359091.1, TTYH1, HES5, NPPC, HMGA1, MCM6, MCM5, AL139246.5
SERF2, GSTP1, DDIT4, SFRP2, CCND1, IGFBP5, RFX4, FGFBP3, SMOC1, MGST1
RPL22L1, DIO3, FAM111B, MCM4, SOX2, MCM3, RPRML, HSPE1, TKTL1, HSPB1
PCAPlot(seu)
#Assess how many PCs capture most of the information in the data
ElbowPlot(seu, ndims = 30)
20 PCs are good now make the UMAP
Find clusters
seu <- FindNeighbors(seu, dims = 1:20, k.param = 121)
Computing nearest neighbor graph
Computing SNN
# the number of clusters is dependent on the resolution a number from 0-2.
# Higher values make more clusters
# we include
seu <- FindClusters(seu, resolution = c(0,0.05,0.25,0.4,0.5,0.6,1,1.5) )
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 1.0000
Number of communities: 1
Elapsed time: 5 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.9714
Number of communities: 4
Elapsed time: 6 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.9167
Number of communities: 6
Elapsed time: 7 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8917
Number of communities: 9
Elapsed time: 7 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8775
Number of communities: 10
Elapsed time: 7 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8662
Number of communities: 11
Elapsed time: 7 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8261
Number of communities: 14
Elapsed time: 8 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 15473
Number of edges: 2981694
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.7905
Number of communities: 21
Elapsed time: 7 seconds
# we can visualize which cells are grouped together at different resolutions using clustree
clustree(seu, prefix = "RNA_snn_res.")
NA
NA
Visualize
DimPlot(seu, group.by = "RNA_snn_res.0.6", label = TRUE)
DimPlot(seu, group.by = "RNA_snn_res.1", label = TRUE)
Look at expression profiles of known cell type markers
da_neurons <- c("TH","SLC6A3","SLC18A2","SOX6","NDNF","SNCG","ALDH1A1","CALB1","TACR2","SLC17A6","SLC32A1","OTX2","GRP","LPL","CCK","VIP")
NPC_orStemLike <- c("DCX","NEUROD1","TBR1","PCNA","MKI67","SOX2","NES","PAX6","MASH1")
mature_neurons = c("RBFOX3","SYP","DLG45","VAMP1","VAMP2","TUBB3","SYT1","BSN","HOMER1","SLC17A6")
excitatory_neurons = c("GRIA2","GRIA1","GRIA4","GRIN1","GRIN2B","GRIN2A","GRIN3A","GRIN3","GRIP1","CAMK2A")
inhbitory_neurons = inh = c("GAD1","GAD2", "GAT1","PVALB","GABR2","GABR1","GBRR1","GABRB2","GABRB1","GABRB3","GABRA6","GABRA1","GABRA4","TRAK2")
astrocytes <- c("GFAP","S100B","AQP4","APOE", "SOX9","SLC1A3")
oligodendrocytes <- c("MBP","MOG","OLIG1","OLIG2","SOX10")
opc <-
radial_glia <- c("PTPRC","AIF1","ADGRE1", "VIM", "TNC","PTPRZ1","FAM107A","HOPX","LIFR",
"ITGB5","IL6ST","SLC1A3")
epithelial <- c("HES1","HES5","SOX2","SOX10","NES","CDH1","NOTCH1")
microglia <- c("IBA1","P2RY12","P2RY13","TREM119", "GPR34","SIGLECH","TREM2",
"CX3CR1","FCRLS","OLFML3","HEXB","TGFBR1", "SALL1","MERTK",
"PROS1")
features_list <- c("MKI67","SOX2","POU5F1","DLX2","PAX6","SOX9","HES1","NES","RBFOX3","MAP2","NCAM1","CD24","GRIA2","GRIN2B","GABBR1","GAD1","GAD2","GABRA1","GABRB2","TH","ALDH1A1","LMX1B","NR4A2","CORIN","CALB1","KCNJ6","CXCR4","ITGA6","SLC1A3","CD44","AQP4","S100B", "PDGFRA","OLIG2","MBP","CLDN11","VIM","VCAM1")
short_list <- c("MKI67","SOX9","HES1","NES","DLX2","RBFOX3","MAP2","TH","CALB1","KCNJ6","SLC1A3","CD44","AQP4","S100B","OLIG2","MBP","VIM")
View on UMAP
Idents(seu) <- "RNA_snn_res.0.6"
for (i in NPC_orStemLike) {
print(FeaturePlot(seu, features = i, min.cutoff = 'q1', max.cutoff = 'q97', label = TRUE))
}
Warning in FetchData.Seurat(object = object, vars = c(dims, "ident", features), :
The following requested variables were not found: MASH1
Error: None of the requested features were found: MASH1 in slot data
Idents(seu) <- "RNA_snn_res.0.6"
for (i in astrocytes) {
print(FeaturePlot(seu, features = i, min.cutoff = 'q1', max.cutoff = 'q97', label = TRUE))
}
Idents(seu) <- "RNA_snn_res.0.6"
for (i in radial_glia) {
print(FeaturePlot(seu, features = i, min.cutoff = 'q1', max.cutoff = 'q97', label = TRUE))
}
Warning in FeaturePlot(seu, features = i, min.cutoff = "q1", max.cutoff = "q97", :
All cells have the same value (0) of ADGRE1.
Idents(seu) <- "RNA_snn_res.0.6"
mature_neuronsB = c("RBFOX3","SYP","VAMP1","VAMP2","TUBB3","SYT1","BSN","HOMER1","SLC17A6")
for (i in mature_neuronsB) {
print(FeaturePlot(seu, features = i, min.cutoff = 'q1', max.cutoff = 'q97', label = TRUE))
}
NA
NA
NA
Dot plots and heatmaps
DotPlot(seu, features = radial_glia)+ RotatedAxis()
DotPlot(seu, features = NPC_orStemLike) + RotatedAxis()
Warning in FetchData.Seurat(object = object, vars = features, cells = cells) :
The following requested variables were not found: MASH1
DotPlot(seu, features = astrocytes) + RotatedAxis()
Find cluster markers
Idents(seu) <- "RNA_snn_res.0.6"
ClusterMarkers <- FindAllMarkers(seu, only.pos = TRUE)
Calculating cluster 0
| | 0 % ~calculating
|+ | 1 % ~13s
|++ | 2 % ~13s
|++ | 3 % ~12s
|+++ | 4 % ~12s
|+++ | 5 % ~12s
|++++ | 7 % ~12s
|++++ | 8 % ~12s
|+++++ | 9 % ~12s
|+++++ | 10% ~12s
|++++++ | 11% ~12s
|++++++ | 12% ~11s
|+++++++ | 13% ~11s
|++++++++ | 14% ~11s
|++++++++ | 15% ~11s
|+++++++++ | 16% ~11s
|+++++++++ | 17% ~11s
|++++++++++ | 18% ~10s
|++++++++++ | 20% ~10s
|+++++++++++ | 21% ~10s
|+++++++++++ | 22% ~10s
|++++++++++++ | 23% ~10s
|++++++++++++ | 24% ~10s
|+++++++++++++ | 25% ~10s
|++++++++++++++ | 26% ~09s
|++++++++++++++ | 27% ~09s
|+++++++++++++++ | 28% ~09s
|+++++++++++++++ | 29% ~09s
|++++++++++++++++ | 30% ~09s
|++++++++++++++++ | 32% ~09s
|+++++++++++++++++ | 33% ~09s
|+++++++++++++++++ | 34% ~08s
|++++++++++++++++++ | 35% ~08s
|++++++++++++++++++ | 36% ~08s
|+++++++++++++++++++ | 37% ~08s
|++++++++++++++++++++ | 38% ~08s
|++++++++++++++++++++ | 39% ~08s
|+++++++++++++++++++++ | 40% ~08s
|+++++++++++++++++++++ | 41% ~07s
|++++++++++++++++++++++ | 42% ~07s
|++++++++++++++++++++++ | 43% ~07s
|+++++++++++++++++++++++ | 45% ~07s
|+++++++++++++++++++++++ | 46% ~07s
|++++++++++++++++++++++++ | 47% ~07s
|++++++++++++++++++++++++ | 48% ~07s
|+++++++++++++++++++++++++ | 49% ~06s
|+++++++++++++++++++++++++ | 50% ~06s
|++++++++++++++++++++++++++ | 51% ~06s
|+++++++++++++++++++++++++++ | 52% ~06s
|+++++++++++++++++++++++++++ | 53% ~06s
|++++++++++++++++++++++++++++ | 54% ~06s
|++++++++++++++++++++++++++++ | 55% ~06s
|+++++++++++++++++++++++++++++ | 57% ~06s
|+++++++++++++++++++++++++++++ | 58% ~05s
|++++++++++++++++++++++++++++++ | 59% ~05s
|++++++++++++++++++++++++++++++ | 60% ~05s
|+++++++++++++++++++++++++++++++ | 61% ~05s
|+++++++++++++++++++++++++++++++ | 62% ~05s
|++++++++++++++++++++++++++++++++ | 63% ~05s
|+++++++++++++++++++++++++++++++++ | 64% ~05s
|+++++++++++++++++++++++++++++++++ | 65% ~04s
|++++++++++++++++++++++++++++++++++ | 66% ~04s
|++++++++++++++++++++++++++++++++++ | 67% ~04s
|+++++++++++++++++++++++++++++++++++ | 68% ~04s
|+++++++++++++++++++++++++++++++++++ | 70% ~04s
|++++++++++++++++++++++++++++++++++++ | 71% ~04s
|++++++++++++++++++++++++++++++++++++ | 72% ~04s
|+++++++++++++++++++++++++++++++++++++ | 73% ~03s
|+++++++++++++++++++++++++++++++++++++ | 74% ~03s
|++++++++++++++++++++++++++++++++++++++ | 75% ~03s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~03s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~03s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~03s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~03s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~03s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 90% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=13s
Calculating cluster 1
| | 0 % ~calculating
|+ | 1 % ~15s
|+ | 2 % ~16s
|++ | 3 % ~15s
|++ | 4 % ~15s
|+++ | 5 % ~15s
|+++ | 6 % ~14s
|++++ | 7 % ~14s
|++++ | 8 % ~14s
|+++++ | 9 % ~14s
|+++++ | 10% ~14s
|++++++ | 11% ~14s
|++++++ | 12% ~13s
|+++++++ | 13% ~13s
|+++++++ | 14% ~13s
|++++++++ | 15% ~13s
|++++++++ | 16% ~13s
|+++++++++ | 17% ~13s
|+++++++++ | 18% ~12s
|++++++++++ | 19% ~12s
|++++++++++ | 20% ~12s
|+++++++++++ | 21% ~12s
|+++++++++++ | 22% ~12s
|++++++++++++ | 23% ~12s
|++++++++++++ | 24% ~11s
|+++++++++++++ | 25% ~11s
|+++++++++++++ | 26% ~11s
|++++++++++++++ | 27% ~11s
|++++++++++++++ | 28% ~11s
|+++++++++++++++ | 29% ~11s
|+++++++++++++++ | 30% ~10s
|++++++++++++++++ | 31% ~10s
|++++++++++++++++ | 32% ~10s
|+++++++++++++++++ | 33% ~10s
|+++++++++++++++++ | 34% ~10s
|++++++++++++++++++ | 35% ~10s
|++++++++++++++++++ | 36% ~09s
|+++++++++++++++++++ | 37% ~09s
|+++++++++++++++++++ | 38% ~09s
|++++++++++++++++++++ | 39% ~09s
|++++++++++++++++++++ | 40% ~09s
|+++++++++++++++++++++ | 41% ~09s
|+++++++++++++++++++++ | 42% ~09s
|++++++++++++++++++++++ | 43% ~08s
|++++++++++++++++++++++ | 44% ~08s
|+++++++++++++++++++++++ | 45% ~08s
|+++++++++++++++++++++++ | 46% ~08s
|++++++++++++++++++++++++ | 47% ~08s
|++++++++++++++++++++++++ | 48% ~08s
|+++++++++++++++++++++++++ | 49% ~08s
|+++++++++++++++++++++++++ | 50% ~07s
|++++++++++++++++++++++++++ | 51% ~07s
|++++++++++++++++++++++++++ | 52% ~07s
|+++++++++++++++++++++++++++ | 53% ~07s
|+++++++++++++++++++++++++++ | 54% ~07s
|++++++++++++++++++++++++++++ | 55% ~07s
|++++++++++++++++++++++++++++ | 56% ~07s
|+++++++++++++++++++++++++++++ | 57% ~06s
|+++++++++++++++++++++++++++++ | 58% ~06s
|++++++++++++++++++++++++++++++ | 59% ~06s
|++++++++++++++++++++++++++++++ | 60% ~06s
|+++++++++++++++++++++++++++++++ | 61% ~06s
|+++++++++++++++++++++++++++++++ | 62% ~06s
|++++++++++++++++++++++++++++++++ | 63% ~05s
|++++++++++++++++++++++++++++++++ | 64% ~05s
|+++++++++++++++++++++++++++++++++ | 65% ~05s
|+++++++++++++++++++++++++++++++++ | 66% ~05s
|++++++++++++++++++++++++++++++++++ | 67% ~05s
|++++++++++++++++++++++++++++++++++ | 68% ~05s
|+++++++++++++++++++++++++++++++++++ | 69% ~05s
|+++++++++++++++++++++++++++++++++++ | 70% ~04s
|++++++++++++++++++++++++++++++++++++ | 71% ~04s
|++++++++++++++++++++++++++++++++++++ | 72% ~04s
|+++++++++++++++++++++++++++++++++++++ | 73% ~04s
|+++++++++++++++++++++++++++++++++++++ | 74% ~04s
|++++++++++++++++++++++++++++++++++++++ | 75% ~04s
|++++++++++++++++++++++++++++++++++++++ | 76% ~04s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~03s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~03s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~03s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~03s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~03s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~03s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~03s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=15s
Calculating cluster 2
| | 0 % ~calculating
|+ | 2 % ~05s
|++ | 3 % ~05s
|+++ | 5 % ~05s
|++++ | 6 % ~05s
|++++ | 8 % ~05s
|+++++ | 9 % ~05s
|++++++ | 11% ~05s
|+++++++ | 12% ~05s
|+++++++ | 14% ~05s
|++++++++ | 15% ~05s
|+++++++++ | 17% ~05s
|++++++++++ | 18% ~05s
|++++++++++ | 20% ~05s
|+++++++++++ | 22% ~04s
|++++++++++++ | 23% ~04s
|+++++++++++++ | 25% ~04s
|++++++++++++++ | 26% ~04s
|++++++++++++++ | 28% ~04s
|+++++++++++++++ | 29% ~04s
|++++++++++++++++ | 31% ~04s
|+++++++++++++++++ | 32% ~04s
|+++++++++++++++++ | 34% ~04s
|++++++++++++++++++ | 35% ~04s
|+++++++++++++++++++ | 37% ~03s
|++++++++++++++++++++ | 38% ~03s
|++++++++++++++++++++ | 40% ~03s
|+++++++++++++++++++++ | 42% ~03s
|++++++++++++++++++++++ | 43% ~03s
|+++++++++++++++++++++++ | 45% ~03s
|++++++++++++++++++++++++ | 46% ~03s
|++++++++++++++++++++++++ | 48% ~03s
|+++++++++++++++++++++++++ | 49% ~03s
|++++++++++++++++++++++++++ | 51% ~03s
|+++++++++++++++++++++++++++ | 52% ~03s
|+++++++++++++++++++++++++++ | 54% ~02s
|++++++++++++++++++++++++++++ | 55% ~02s
|+++++++++++++++++++++++++++++ | 57% ~02s
|++++++++++++++++++++++++++++++ | 58% ~02s
|++++++++++++++++++++++++++++++ | 60% ~02s
|+++++++++++++++++++++++++++++++ | 62% ~02s
|++++++++++++++++++++++++++++++++ | 63% ~02s
|+++++++++++++++++++++++++++++++++ | 65% ~02s
|++++++++++++++++++++++++++++++++++ | 66% ~02s
|++++++++++++++++++++++++++++++++++ | 68% ~02s
|+++++++++++++++++++++++++++++++++++ | 69% ~02s
|++++++++++++++++++++++++++++++++++++ | 71% ~02s
|+++++++++++++++++++++++++++++++++++++ | 72% ~01s
|+++++++++++++++++++++++++++++++++++++ | 74% ~01s
|++++++++++++++++++++++++++++++++++++++ | 75% ~01s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~01s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~01s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~01s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~01s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=05s
Calculating cluster 3
| | 0 % ~calculating
|+ | 1 % ~22s
|++ | 2 % ~21s
|++ | 3 % ~21s
|+++ | 5 % ~20s
|+++ | 6 % ~20s
|++++ | 7 % ~21s
|+++++ | 8 % ~21s
|+++++ | 9 % ~21s
|++++++ | 10% ~21s
|++++++ | 12% ~20s
|+++++++ | 13% ~20s
|+++++++ | 14% ~19s
|++++++++ | 15% ~19s
|+++++++++ | 16% ~19s
|+++++++++ | 17% ~18s
|++++++++++ | 19% ~18s
|++++++++++ | 20% ~18s
|+++++++++++ | 21% ~17s
|++++++++++++ | 22% ~17s
|++++++++++++ | 23% ~17s
|+++++++++++++ | 24% ~16s
|+++++++++++++ | 26% ~16s
|++++++++++++++ | 27% ~16s
|++++++++++++++ | 28% ~15s
|+++++++++++++++ | 29% ~15s
|++++++++++++++++ | 30% ~15s
|++++++++++++++++ | 31% ~15s
|+++++++++++++++++ | 33% ~14s
|+++++++++++++++++ | 34% ~14s
|++++++++++++++++++ | 35% ~14s
|+++++++++++++++++++ | 36% ~14s
|+++++++++++++++++++ | 37% ~13s
|++++++++++++++++++++ | 38% ~13s
|++++++++++++++++++++ | 40% ~13s
|+++++++++++++++++++++ | 41% ~13s
|+++++++++++++++++++++ | 42% ~12s
|++++++++++++++++++++++ | 43% ~12s
|+++++++++++++++++++++++ | 44% ~12s
|+++++++++++++++++++++++ | 45% ~11s
|++++++++++++++++++++++++ | 47% ~11s
|++++++++++++++++++++++++ | 48% ~11s
|+++++++++++++++++++++++++ | 49% ~11s
|+++++++++++++++++++++++++ | 50% ~10s
|++++++++++++++++++++++++++ | 51% ~10s
|+++++++++++++++++++++++++++ | 52% ~10s
|+++++++++++++++++++++++++++ | 53% ~10s
|++++++++++++++++++++++++++++ | 55% ~09s
|++++++++++++++++++++++++++++ | 56% ~09s
|+++++++++++++++++++++++++++++ | 57% ~09s
|++++++++++++++++++++++++++++++ | 58% ~09s
|++++++++++++++++++++++++++++++ | 59% ~08s
|+++++++++++++++++++++++++++++++ | 60% ~08s
|+++++++++++++++++++++++++++++++ | 62% ~08s
|++++++++++++++++++++++++++++++++ | 63% ~08s
|++++++++++++++++++++++++++++++++ | 64% ~07s
|+++++++++++++++++++++++++++++++++ | 65% ~07s
|++++++++++++++++++++++++++++++++++ | 66% ~07s
|++++++++++++++++++++++++++++++++++ | 67% ~07s
|+++++++++++++++++++++++++++++++++++ | 69% ~06s
|+++++++++++++++++++++++++++++++++++ | 70% ~06s
|++++++++++++++++++++++++++++++++++++ | 71% ~06s
|+++++++++++++++++++++++++++++++++++++ | 72% ~06s
|+++++++++++++++++++++++++++++++++++++ | 73% ~05s
|++++++++++++++++++++++++++++++++++++++ | 74% ~05s
|++++++++++++++++++++++++++++++++++++++ | 76% ~05s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~05s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~04s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~04s
|+++++++++++++++++++++++++++++++++++++++++ | 80% ~04s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~04s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~04s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~03s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~03s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~03s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=20s
Calculating cluster 4
| | 0 % ~calculating
|+ | 1 % ~09s
|++ | 2 % ~10s
|++ | 4 % ~10s
|+++ | 5 % ~10s
|++++ | 6 % ~10s
|++++ | 7 % ~10s
|+++++ | 8 % ~10s
|+++++ | 10% ~10s
|++++++ | 11% ~10s
|+++++++ | 12% ~09s
|+++++++ | 13% ~09s
|++++++++ | 14% ~09s
|++++++++ | 16% ~09s
|+++++++++ | 17% ~09s
|++++++++++ | 18% ~09s
|++++++++++ | 19% ~08s
|+++++++++++ | 20% ~08s
|+++++++++++ | 22% ~08s
|++++++++++++ | 23% ~08s
|+++++++++++++ | 24% ~08s
|+++++++++++++ | 25% ~08s
|++++++++++++++ | 27% ~07s
|++++++++++++++ | 28% ~07s
|+++++++++++++++ | 29% ~07s
|++++++++++++++++ | 30% ~07s
|++++++++++++++++ | 31% ~07s
|+++++++++++++++++ | 33% ~07s
|+++++++++++++++++ | 34% ~07s
|++++++++++++++++++ | 35% ~07s
|+++++++++++++++++++ | 36% ~06s
|+++++++++++++++++++ | 37% ~06s
|++++++++++++++++++++ | 39% ~06s
|++++++++++++++++++++ | 40% ~06s
|+++++++++++++++++++++ | 41% ~06s
|++++++++++++++++++++++ | 42% ~06s
|++++++++++++++++++++++ | 43% ~06s
|+++++++++++++++++++++++ | 45% ~06s
|+++++++++++++++++++++++ | 46% ~05s
|++++++++++++++++++++++++ | 47% ~05s
|+++++++++++++++++++++++++ | 48% ~05s
|+++++++++++++++++++++++++ | 49% ~05s
|++++++++++++++++++++++++++ | 51% ~05s
|++++++++++++++++++++++++++ | 52% ~05s
|+++++++++++++++++++++++++++ | 53% ~05s
|++++++++++++++++++++++++++++ | 54% ~05s
|++++++++++++++++++++++++++++ | 55% ~04s
|+++++++++++++++++++++++++++++ | 57% ~04s
|+++++++++++++++++++++++++++++ | 58% ~04s
|++++++++++++++++++++++++++++++ | 59% ~04s
|+++++++++++++++++++++++++++++++ | 60% ~04s
|+++++++++++++++++++++++++++++++ | 61% ~04s
|++++++++++++++++++++++++++++++++ | 63% ~04s
|++++++++++++++++++++++++++++++++ | 64% ~04s
|+++++++++++++++++++++++++++++++++ | 65% ~03s
|++++++++++++++++++++++++++++++++++ | 66% ~03s
|++++++++++++++++++++++++++++++++++ | 67% ~03s
|+++++++++++++++++++++++++++++++++++ | 69% ~03s
|+++++++++++++++++++++++++++++++++++ | 70% ~03s
|++++++++++++++++++++++++++++++++++++ | 71% ~03s
|+++++++++++++++++++++++++++++++++++++ | 72% ~03s
|+++++++++++++++++++++++++++++++++++++ | 73% ~03s
|++++++++++++++++++++++++++++++++++++++ | 75% ~02s
|++++++++++++++++++++++++++++++++++++++ | 76% ~02s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~02s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~02s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 90% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=10s
Calculating cluster 5
| | 0 % ~calculating
|+ | 1 % ~43s
|++ | 2 % ~44s
|++ | 3 % ~43s
|+++ | 4 % ~41s
|+++ | 5 % ~40s
|++++ | 6 % ~40s
|++++ | 7 % ~39s
|+++++ | 8 % ~39s
|+++++ | 9 % ~38s
|++++++ | 11% ~37s
|++++++ | 12% ~36s
|+++++++ | 13% ~36s
|+++++++ | 14% ~35s
|++++++++ | 15% ~35s
|++++++++ | 16% ~34s
|+++++++++ | 17% ~34s
|+++++++++ | 18% ~33s
|++++++++++ | 19% ~33s
|++++++++++ | 20% ~33s
|+++++++++++ | 21% ~32s
|++++++++++++ | 22% ~32s
|++++++++++++ | 23% ~31s
|+++++++++++++ | 24% ~31s
|+++++++++++++ | 25% ~30s
|++++++++++++++ | 26% ~30s
|++++++++++++++ | 27% ~29s
|+++++++++++++++ | 28% ~29s
|+++++++++++++++ | 29% ~29s
|++++++++++++++++ | 31% ~28s
|++++++++++++++++ | 32% ~28s
|+++++++++++++++++ | 33% ~27s
|+++++++++++++++++ | 34% ~27s
|++++++++++++++++++ | 35% ~27s
|++++++++++++++++++ | 36% ~26s
|+++++++++++++++++++ | 37% ~26s
|+++++++++++++++++++ | 38% ~25s
|++++++++++++++++++++ | 39% ~25s
|++++++++++++++++++++ | 40% ~24s
|+++++++++++++++++++++ | 41% ~24s
|++++++++++++++++++++++ | 42% ~24s
|++++++++++++++++++++++ | 43% ~23s
|+++++++++++++++++++++++ | 44% ~23s
|+++++++++++++++++++++++ | 45% ~22s
|++++++++++++++++++++++++ | 46% ~22s
|++++++++++++++++++++++++ | 47% ~21s
|+++++++++++++++++++++++++ | 48% ~21s
|+++++++++++++++++++++++++ | 49% ~20s
|++++++++++++++++++++++++++ | 51% ~20s
|++++++++++++++++++++++++++ | 52% ~20s
|+++++++++++++++++++++++++++ | 53% ~19s
|+++++++++++++++++++++++++++ | 54% ~19s
|++++++++++++++++++++++++++++ | 55% ~18s
|++++++++++++++++++++++++++++ | 56% ~18s
|+++++++++++++++++++++++++++++ | 57% ~17s
|+++++++++++++++++++++++++++++ | 58% ~17s
|++++++++++++++++++++++++++++++ | 59% ~17s
|++++++++++++++++++++++++++++++ | 60% ~16s
|+++++++++++++++++++++++++++++++ | 61% ~16s
|++++++++++++++++++++++++++++++++ | 62% ~15s
|++++++++++++++++++++++++++++++++ | 63% ~15s
|+++++++++++++++++++++++++++++++++ | 64% ~14s
|+++++++++++++++++++++++++++++++++ | 65% ~14s
|++++++++++++++++++++++++++++++++++ | 66% ~14s
|++++++++++++++++++++++++++++++++++ | 67% ~13s
|+++++++++++++++++++++++++++++++++++ | 68% ~13s
|+++++++++++++++++++++++++++++++++++ | 69% ~12s
|++++++++++++++++++++++++++++++++++++ | 71% ~12s
|++++++++++++++++++++++++++++++++++++ | 72% ~11s
|+++++++++++++++++++++++++++++++++++++ | 73% ~11s
|+++++++++++++++++++++++++++++++++++++ | 74% ~11s
|++++++++++++++++++++++++++++++++++++++ | 75% ~10s
|++++++++++++++++++++++++++++++++++++++ | 76% ~10s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~09s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~09s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~08s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~08s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~08s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~07s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~07s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~06s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~06s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~05s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~05s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~04s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~04s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=40s
Calculating cluster 6
| | 0 % ~calculating
|+ | 1 % ~10s
|++ | 2 % ~10s
|++ | 3 % ~10s
|+++ | 5 % ~09s
|+++ | 6 % ~09s
|++++ | 7 % ~09s
|++++ | 8 % ~09s
|+++++ | 9 % ~09s
|++++++ | 10% ~08s
|++++++ | 11% ~08s
|+++++++ | 12% ~08s
|+++++++ | 14% ~08s
|++++++++ | 15% ~08s
|++++++++ | 16% ~08s
|+++++++++ | 17% ~08s
|++++++++++ | 18% ~08s
|++++++++++ | 19% ~08s
|+++++++++++ | 20% ~08s
|+++++++++++ | 22% ~07s
|++++++++++++ | 23% ~07s
|++++++++++++ | 24% ~07s
|+++++++++++++ | 25% ~07s
|++++++++++++++ | 26% ~07s
|++++++++++++++ | 27% ~07s
|+++++++++++++++ | 28% ~07s
|+++++++++++++++ | 30% ~07s
|++++++++++++++++ | 31% ~07s
|++++++++++++++++ | 32% ~07s
|+++++++++++++++++ | 33% ~06s
|++++++++++++++++++ | 34% ~06s
|++++++++++++++++++ | 35% ~06s
|+++++++++++++++++++ | 36% ~06s
|+++++++++++++++++++ | 38% ~06s
|++++++++++++++++++++ | 39% ~06s
|++++++++++++++++++++ | 40% ~06s
|+++++++++++++++++++++ | 41% ~06s
|++++++++++++++++++++++ | 42% ~06s
|++++++++++++++++++++++ | 43% ~06s
|+++++++++++++++++++++++ | 44% ~05s
|+++++++++++++++++++++++ | 45% ~05s
|++++++++++++++++++++++++ | 47% ~05s
|++++++++++++++++++++++++ | 48% ~05s
|+++++++++++++++++++++++++ | 49% ~05s
|+++++++++++++++++++++++++ | 50% ~05s
|++++++++++++++++++++++++++ | 51% ~05s
|+++++++++++++++++++++++++++ | 52% ~05s
|+++++++++++++++++++++++++++ | 53% ~05s
|++++++++++++++++++++++++++++ | 55% ~04s
|++++++++++++++++++++++++++++ | 56% ~04s
|+++++++++++++++++++++++++++++ | 57% ~04s
|+++++++++++++++++++++++++++++ | 58% ~04s
|++++++++++++++++++++++++++++++ | 59% ~04s
|+++++++++++++++++++++++++++++++ | 60% ~04s
|+++++++++++++++++++++++++++++++ | 61% ~04s
|++++++++++++++++++++++++++++++++ | 62% ~04s
|++++++++++++++++++++++++++++++++ | 64% ~04s
|+++++++++++++++++++++++++++++++++ | 65% ~03s
|+++++++++++++++++++++++++++++++++ | 66% ~03s
|++++++++++++++++++++++++++++++++++ | 67% ~03s
|+++++++++++++++++++++++++++++++++++ | 68% ~03s
|+++++++++++++++++++++++++++++++++++ | 69% ~03s
|++++++++++++++++++++++++++++++++++++ | 70% ~03s
|++++++++++++++++++++++++++++++++++++ | 72% ~03s
|+++++++++++++++++++++++++++++++++++++ | 73% ~03s
|+++++++++++++++++++++++++++++++++++++ | 74% ~03s
|++++++++++++++++++++++++++++++++++++++ | 75% ~02s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~02s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 78% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~02s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~02s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=10s
Calculating cluster 7
| | 0 % ~calculating
|+ | 1 % ~15s
|++ | 2 % ~14s
|++ | 3 % ~30s
|+++ | 4 % ~25s
|+++ | 5 % ~22s
|++++ | 6 % ~19s
|++++ | 7 % ~18s
|+++++ | 8 % ~16s
|+++++ | 9 % ~15s
|++++++ | 11% ~14s
|++++++ | 12% ~14s
|+++++++ | 13% ~13s
|+++++++ | 14% ~13s
|++++++++ | 15% ~12s
|++++++++ | 16% ~12s
|+++++++++ | 17% ~11s
|+++++++++ | 18% ~11s
|++++++++++ | 19% ~11s
|++++++++++ | 20% ~11s
|+++++++++++ | 21% ~10s
|++++++++++++ | 22% ~10s
|++++++++++++ | 23% ~10s
|+++++++++++++ | 24% ~10s
|+++++++++++++ | 25% ~09s
|++++++++++++++ | 26% ~09s
|++++++++++++++ | 27% ~09s
|+++++++++++++++ | 28% ~09s
|+++++++++++++++ | 29% ~09s
|++++++++++++++++ | 31% ~08s
|++++++++++++++++ | 32% ~08s
|+++++++++++++++++ | 33% ~08s
|+++++++++++++++++ | 34% ~08s
|++++++++++++++++++ | 35% ~08s
|++++++++++++++++++ | 36% ~08s
|+++++++++++++++++++ | 37% ~08s
|+++++++++++++++++++ | 38% ~07s
|++++++++++++++++++++ | 39% ~07s
|++++++++++++++++++++ | 40% ~07s
|+++++++++++++++++++++ | 41% ~07s
|++++++++++++++++++++++ | 42% ~07s
|++++++++++++++++++++++ | 43% ~07s
|+++++++++++++++++++++++ | 44% ~07s
|+++++++++++++++++++++++ | 45% ~06s
|++++++++++++++++++++++++ | 46% ~06s
|++++++++++++++++++++++++ | 47% ~06s
|+++++++++++++++++++++++++ | 48% ~06s
|+++++++++++++++++++++++++ | 49% ~06s
|++++++++++++++++++++++++++ | 51% ~06s
|++++++++++++++++++++++++++ | 52% ~06s
|+++++++++++++++++++++++++++ | 53% ~06s
|+++++++++++++++++++++++++++ | 54% ~05s
|++++++++++++++++++++++++++++ | 55% ~05s
|++++++++++++++++++++++++++++ | 56% ~05s
|+++++++++++++++++++++++++++++ | 57% ~05s
|+++++++++++++++++++++++++++++ | 58% ~05s
|++++++++++++++++++++++++++++++ | 59% ~05s
|++++++++++++++++++++++++++++++ | 60% ~05s
|+++++++++++++++++++++++++++++++ | 61% ~04s
|++++++++++++++++++++++++++++++++ | 62% ~04s
|++++++++++++++++++++++++++++++++ | 63% ~04s
|+++++++++++++++++++++++++++++++++ | 64% ~04s
|+++++++++++++++++++++++++++++++++ | 65% ~04s
|++++++++++++++++++++++++++++++++++ | 66% ~04s
|++++++++++++++++++++++++++++++++++ | 67% ~04s
|+++++++++++++++++++++++++++++++++++ | 68% ~04s
|+++++++++++++++++++++++++++++++++++ | 69% ~03s
|++++++++++++++++++++++++++++++++++++ | 71% ~03s
|++++++++++++++++++++++++++++++++++++ | 72% ~03s
|+++++++++++++++++++++++++++++++++++++ | 73% ~03s
|+++++++++++++++++++++++++++++++++++++ | 74% ~03s
|++++++++++++++++++++++++++++++++++++++ | 75% ~03s
|++++++++++++++++++++++++++++++++++++++ | 76% ~03s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~03s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~03s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~02s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~02s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=11s
Calculating cluster 8
| | 0 % ~calculating
|+ | 1 % ~16s
|++ | 2 % ~17s
|++ | 3 % ~17s
|+++ | 4 % ~16s
|+++ | 6 % ~16s
|++++ | 7 % ~16s
|++++ | 8 % ~16s
|+++++ | 9 % ~15s
|+++++ | 10% ~15s
|++++++ | 11% ~15s
|+++++++ | 12% ~15s
|+++++++ | 13% ~15s
|++++++++ | 14% ~15s
|++++++++ | 16% ~15s
|+++++++++ | 17% ~14s
|+++++++++ | 18% ~14s
|++++++++++ | 19% ~14s
|++++++++++ | 20% ~14s
|+++++++++++ | 21% ~14s
|++++++++++++ | 22% ~13s
|++++++++++++ | 23% ~13s
|+++++++++++++ | 24% ~13s
|+++++++++++++ | 26% ~13s
|++++++++++++++ | 27% ~13s
|++++++++++++++ | 28% ~12s
|+++++++++++++++ | 29% ~12s
|+++++++++++++++ | 30% ~12s
|++++++++++++++++ | 31% ~12s
|+++++++++++++++++ | 32% ~12s
|+++++++++++++++++ | 33% ~11s
|++++++++++++++++++ | 34% ~11s
|++++++++++++++++++ | 36% ~11s
|+++++++++++++++++++ | 37% ~11s
|+++++++++++++++++++ | 38% ~11s
|++++++++++++++++++++ | 39% ~10s
|++++++++++++++++++++ | 40% ~10s
|+++++++++++++++++++++ | 41% ~10s
|++++++++++++++++++++++ | 42% ~10s
|++++++++++++++++++++++ | 43% ~10s
|+++++++++++++++++++++++ | 44% ~10s
|+++++++++++++++++++++++ | 46% ~09s
|++++++++++++++++++++++++ | 47% ~09s
|++++++++++++++++++++++++ | 48% ~09s
|+++++++++++++++++++++++++ | 49% ~09s
|+++++++++++++++++++++++++ | 50% ~09s
|++++++++++++++++++++++++++ | 51% ~08s
|+++++++++++++++++++++++++++ | 52% ~08s
|+++++++++++++++++++++++++++ | 53% ~08s
|++++++++++++++++++++++++++++ | 54% ~08s
|++++++++++++++++++++++++++++ | 56% ~08s
|+++++++++++++++++++++++++++++ | 57% ~07s
|+++++++++++++++++++++++++++++ | 58% ~07s
|++++++++++++++++++++++++++++++ | 59% ~07s
|++++++++++++++++++++++++++++++ | 60% ~07s
|+++++++++++++++++++++++++++++++ | 61% ~07s
|++++++++++++++++++++++++++++++++ | 62% ~06s
|++++++++++++++++++++++++++++++++ | 63% ~06s
|+++++++++++++++++++++++++++++++++ | 64% ~06s
|+++++++++++++++++++++++++++++++++ | 66% ~06s
|++++++++++++++++++++++++++++++++++ | 67% ~06s
|++++++++++++++++++++++++++++++++++ | 68% ~06s
|+++++++++++++++++++++++++++++++++++ | 69% ~05s
|+++++++++++++++++++++++++++++++++++ | 70% ~05s
|++++++++++++++++++++++++++++++++++++ | 71% ~05s
|+++++++++++++++++++++++++++++++++++++ | 72% ~05s
|+++++++++++++++++++++++++++++++++++++ | 73% ~05s
|++++++++++++++++++++++++++++++++++++++ | 74% ~04s
|++++++++++++++++++++++++++++++++++++++ | 76% ~04s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~04s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~04s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~04s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~03s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~03s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~03s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~03s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~03s
|+++++++++++++++++++++++++++++++++++++++++++ | 86% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~02s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=17s
Calculating cluster 9
| | 0 % ~calculating
|+ | 1 % ~10s
|++ | 2 % ~08s
|++ | 4 % ~08s
|+++ | 5 % ~08s
|++++ | 6 % ~08s
|++++ | 8 % ~08s
|+++++ | 9 % ~07s
|+++++ | 10% ~07s
|++++++ | 11% ~07s
|+++++++ | 12% ~07s
|+++++++ | 14% ~07s
|++++++++ | 15% ~07s
|+++++++++ | 16% ~06s
|+++++++++ | 18% ~06s
|++++++++++ | 19% ~06s
|++++++++++ | 20% ~06s
|+++++++++++ | 21% ~06s
|++++++++++++ | 22% ~06s
|++++++++++++ | 24% ~06s
|+++++++++++++ | 25% ~06s
|++++++++++++++ | 26% ~06s
|++++++++++++++ | 28% ~06s
|+++++++++++++++ | 29% ~05s
|+++++++++++++++ | 30% ~05s
|++++++++++++++++ | 31% ~05s
|+++++++++++++++++ | 32% ~05s
|+++++++++++++++++ | 34% ~05s
|++++++++++++++++++ | 35% ~05s
|+++++++++++++++++++ | 36% ~05s
|+++++++++++++++++++ | 38% ~05s
|++++++++++++++++++++ | 39% ~05s
|++++++++++++++++++++ | 40% ~05s
|+++++++++++++++++++++ | 41% ~05s
|++++++++++++++++++++++ | 42% ~05s
|++++++++++++++++++++++ | 44% ~04s
|+++++++++++++++++++++++ | 45% ~04s
|++++++++++++++++++++++++ | 46% ~04s
|++++++++++++++++++++++++ | 48% ~04s
|+++++++++++++++++++++++++ | 49% ~04s
|+++++++++++++++++++++++++ | 50% ~04s
|++++++++++++++++++++++++++ | 51% ~04s
|+++++++++++++++++++++++++++ | 52% ~04s
|+++++++++++++++++++++++++++ | 54% ~04s
|++++++++++++++++++++++++++++ | 55% ~04s
|+++++++++++++++++++++++++++++ | 56% ~04s
|+++++++++++++++++++++++++++++ | 58% ~03s
|++++++++++++++++++++++++++++++ | 59% ~03s
|++++++++++++++++++++++++++++++ | 60% ~03s
|+++++++++++++++++++++++++++++++ | 61% ~03s
|++++++++++++++++++++++++++++++++ | 62% ~03s
|++++++++++++++++++++++++++++++++ | 64% ~03s
|+++++++++++++++++++++++++++++++++ | 65% ~03s
|++++++++++++++++++++++++++++++++++ | 66% ~03s
|++++++++++++++++++++++++++++++++++ | 68% ~03s
|+++++++++++++++++++++++++++++++++++ | 69% ~03s
|+++++++++++++++++++++++++++++++++++ | 70% ~02s
|++++++++++++++++++++++++++++++++++++ | 71% ~02s
|+++++++++++++++++++++++++++++++++++++ | 72% ~02s
|+++++++++++++++++++++++++++++++++++++ | 74% ~02s
|++++++++++++++++++++++++++++++++++++++ | 75% ~02s
|+++++++++++++++++++++++++++++++++++++++ | 76% ~02s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~02s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~02s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~02s
|++++++++++++++++++++++++++++++++++++++++++ | 82% ~01s
|++++++++++++++++++++++++++++++++++++++++++ | 84% ~01s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~01s
|++++++++++++++++++++++++++++++++++++++++++++ | 88% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++ | 90% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 92% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~00s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=08s
Calculating cluster 10
| | 0 % ~calculating
|+ | 1 % ~26s
|++ | 2 % ~28s
|++ | 3 % ~26s
|+++ | 4 % ~26s
|+++ | 5 % ~25s
|++++ | 6 % ~24s
|++++ | 7 % ~24s
|+++++ | 9 % ~24s
|+++++ | 10% ~23s
|++++++ | 11% ~23s
|++++++ | 12% ~22s
|+++++++ | 13% ~22s
|+++++++ | 14% ~22s
|++++++++ | 15% ~22s
|++++++++ | 16% ~22s
|+++++++++ | 17% ~22s
|++++++++++ | 18% ~21s
|++++++++++ | 19% ~21s
|+++++++++++ | 20% ~21s
|+++++++++++ | 21% ~21s
|++++++++++++ | 22% ~21s
|++++++++++++ | 23% ~21s
|+++++++++++++ | 24% ~20s
|+++++++++++++ | 26% ~20s
|++++++++++++++ | 27% ~20s
|++++++++++++++ | 28% ~21s
|+++++++++++++++ | 29% ~21s
|+++++++++++++++ | 30% ~20s
|++++++++++++++++ | 31% ~20s
|++++++++++++++++ | 32% ~20s
|+++++++++++++++++ | 33% ~19s
|++++++++++++++++++ | 34% ~19s
|++++++++++++++++++ | 35% ~19s
|+++++++++++++++++++ | 36% ~18s
|+++++++++++++++++++ | 37% ~18s
|++++++++++++++++++++ | 38% ~18s
|++++++++++++++++++++ | 39% ~17s
|+++++++++++++++++++++ | 40% ~17s
|+++++++++++++++++++++ | 41% ~17s
|++++++++++++++++++++++ | 43% ~16s
|++++++++++++++++++++++ | 44% ~16s
|+++++++++++++++++++++++ | 45% ~16s
|+++++++++++++++++++++++ | 46% ~15s
|++++++++++++++++++++++++ | 47% ~15s
|++++++++++++++++++++++++ | 48% ~15s
|+++++++++++++++++++++++++ | 49% ~14s
|+++++++++++++++++++++++++ | 50% ~14s
|++++++++++++++++++++++++++ | 51% ~14s
|+++++++++++++++++++++++++++ | 52% ~14s
|+++++++++++++++++++++++++++ | 53% ~13s
|++++++++++++++++++++++++++++ | 54% ~13s
|++++++++++++++++++++++++++++ | 55% ~13s
|+++++++++++++++++++++++++++++ | 56% ~12s
|+++++++++++++++++++++++++++++ | 57% ~12s
|++++++++++++++++++++++++++++++ | 59% ~12s
|++++++++++++++++++++++++++++++ | 60% ~11s
|+++++++++++++++++++++++++++++++ | 61% ~11s
|+++++++++++++++++++++++++++++++ | 62% ~11s
|++++++++++++++++++++++++++++++++ | 63% ~10s
|++++++++++++++++++++++++++++++++ | 64% ~10s
|+++++++++++++++++++++++++++++++++ | 65% ~10s
|+++++++++++++++++++++++++++++++++ | 66% ~09s
|++++++++++++++++++++++++++++++++++ | 67% ~09s
|+++++++++++++++++++++++++++++++++++ | 68% ~09s
|+++++++++++++++++++++++++++++++++++ | 69% ~09s
|++++++++++++++++++++++++++++++++++++ | 70% ~08s
|++++++++++++++++++++++++++++++++++++ | 71% ~08s
|+++++++++++++++++++++++++++++++++++++ | 72% ~08s
|+++++++++++++++++++++++++++++++++++++ | 73% ~07s
|++++++++++++++++++++++++++++++++++++++ | 74% ~07s
|++++++++++++++++++++++++++++++++++++++ | 76% ~07s
|+++++++++++++++++++++++++++++++++++++++ | 77% ~07s
|+++++++++++++++++++++++++++++++++++++++ | 78% ~06s
|++++++++++++++++++++++++++++++++++++++++ | 79% ~06s
|++++++++++++++++++++++++++++++++++++++++ | 80% ~06s
|+++++++++++++++++++++++++++++++++++++++++ | 81% ~05s
|+++++++++++++++++++++++++++++++++++++++++ | 82% ~05s
|++++++++++++++++++++++++++++++++++++++++++ | 83% ~05s
|+++++++++++++++++++++++++++++++++++++++++++ | 84% ~04s
|+++++++++++++++++++++++++++++++++++++++++++ | 85% ~04s
|++++++++++++++++++++++++++++++++++++++++++++ | 86% ~04s
|++++++++++++++++++++++++++++++++++++++++++++ | 87% ~04s
|+++++++++++++++++++++++++++++++++++++++++++++ | 88% ~03s
|+++++++++++++++++++++++++++++++++++++++++++++ | 89% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++ | 90% ~03s
|++++++++++++++++++++++++++++++++++++++++++++++ | 91% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 93% ~02s
|+++++++++++++++++++++++++++++++++++++++++++++++ | 94% ~02s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 95% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++ | 96% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 97% ~01s
|+++++++++++++++++++++++++++++++++++++++++++++++++ | 98% ~01s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 99% ~00s
|++++++++++++++++++++++++++++++++++++++++++++++++++| 100% elapsed=27s
Have a look at the top cluster markers
head(ClusterMarkers)
top5 <- ClusterMarkers %>% group_by(cluster) %>% top_n(n=5, wt =avg_log2FC)
top2 <- ClusterMarkers %>% group_by(cluster) %>% top_n(n=2, wt =avg_log2FC)
DoHeatmap(seu, features = top5$gene, size = 3, angle = 90, group.by = "RNA_snn_res.0.6")
DoHeatmap(seu, features = top2$gene, size = 3, angle = 90, group.by = "RNA_snn_res.0.6")
Now use EnrichR to check cell type libraries
setEnrichrSite("Enrichr") # Human genes
Connection changed to https://maayanlab.cloud/Enrichr/
Connection is Live!
# list of all the databases
dbs <- listEnrichrDbs()
# this will list the possible libraries
dbs
# select libraries with cell types
db <- c('CellMarker_Augmented_2021','Azimuth_Cell_Types_2021')
# function for a quick look
checkCelltypes <- function(cluster_num = 0){
clusterX <- ClusterMarkers %>% filter(cluster == cluster_num & avg_log2FC > 0.25)
genes <- clusterX$gene
# the cell type libraries
# get the results for each library
clusterX.cell <- enrichr(genes, databases = db)
# visualize the results
print(plotEnrich(clusterX.cell[[1]], showTerms = 20, numChar = 40, y = "Count", orderBy = "P.value", title = 'CellMarker_Augmented_2021'))
print(plotEnrich(clusterX.cell[[2]], showTerms = 20, numChar = 40, y = "Count", orderBy = "P.value", title = 'Azimuth_Cell_Types_2021'))
}
Check each cluster
cluster0 <- checkCelltypes(cluster_num = 0)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster1 <- checkCelltypes(cluster_num = 1)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster2 <- checkCelltypes(cluster_num = 2)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster3 <- checkCelltypes(cluster_num = 3)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster4 <- checkCelltypes(cluster_num = 4)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster5 <- checkCelltypes(cluster_num = 5)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster6 <- checkCelltypes(cluster_num = 6)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster7 <- checkCelltypes(cluster_num = 7)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster8 <- checkCelltypes(cluster_num = 8)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster9 <- checkCelltypes(cluster_num = 9)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
cluster10 <- checkCelltypes(cluster_num = 10)
Uploading data to Enrichr... Done.
Querying CellMarker_Augmented_2021... Done.
Querying Azimuth_Cell_Types_2021... Done.
Parsing results... Done.
Add cell type annotations
See cell counts for each line and cell type
Idents(seu) <- "souporcell_status"
table(seu$souporcell_status)
doublet singlet unassigned
1820 13603 50
singlet <- subset(seu, idents = "singlet")
VlnPlot(singlet, features = "nFeature_RNA", group.by = "souporcell_assignment")
Idents(singlet)<- "MainCelltypes"
DimPlot(singlet, group.by = "souporcell_assignment", label = TRUE)
We might need to separate and harmonize each cell type.
for (i in 1:length(sublist)){
sublist[[i]] <- NormalizeData(sublist[[i]], verbose = FALSE)
sublist[[i]] <- FindVariableFeatures(sublist[[i]], selection.method = "vst")
}
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating gene variances
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Calculating feature variances of standardized and clipped values
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
integrated_seurat <- IntegrateData(anchorset = int.anchors, dims = 1:30, k.weight = 72)
Merging dataset 12 into 4
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 5 into 4 12
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 11 into 9
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 8 into 7
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 6 into 1
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 10 into 3
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 2 into 3 10
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 9 11 into 7 8
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 3 10 2 into 1 6
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 4 12 5 into 7 8 9 11
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
Merging dataset 7 8 9 11 4 12 5 into 1 6 3 10 2
Extracting anchors for merged samples
Finding integration vectors
Finding integration vector weights
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Integrating data
integrated_seurat <- RunUMAP(integrated_seurat, reduction = "pca", dims = 1:20, n.neighbors = 81)
16:42:59 UMAP embedding parameters a = 0.9922 b = 1.112
16:42:59 Read 16442 rows and found 20 numeric columns
16:42:59 Using Annoy for neighbor search, n_neighbors = 81
16:42:59 Building Annoy index with metric = cosine, n_trees = 50
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
16:43:01 Writing NN index file to temp file /var/folders/k4/khtkczkd5tn732ftjpwgtr240000gn/T//Rtmp0peLrn/file761314265441
16:43:01 Searching Annoy index using 1 thread, search_k = 8100
16:43:12 Annoy recall = 100%
16:43:15 Commencing smooth kNN distance calibration using 1 thread with target n_neighbors = 81
16:43:20 Initializing from normalized Laplacian + noise (using irlba)
16:43:21 Commencing optimization for 200 epochs, with 1655996 positive edges
Using method 'umap'
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
16:43:39 Optimization finished
output_path <- "/Users/rhalenathomas/Documents/Data/scRNAseq/ADHD_ZNZ_Mcgill/"
saveRDS(integrated_seurat,paste(output_path,"IntegratedSeuratGraphs.RDS",sep = ""))
integrated_seurat <- FindNeighbors(integrated_seurat, dims = 1:20, k.param = 81)
Computing nearest neighbor graph
Computing SNN
integrated_seurat <- FindClusters(integrated_seurat, resolution = c(0.6,1) )
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 16442
Number of edges: 2500751
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8712
Number of communities: 13
Elapsed time: 8 seconds
Modularity Optimizer version 1.3.0 by Ludo Waltman and Nees Jan van Eck
Number of nodes: 16442
Number of edges: 2500751
Running Louvain algorithm...
0% 10 20 30 40 50 60 70 80 90 100%
[----|----|----|----|----|----|----|----|----|----|
**************************************************|
Maximum modularity in 10 random starts: 0.8310
Number of communities: 16
Elapsed time: 8 seconds
DimPlot(integrated_seurat, group.by = "orig.ident")
#integrated_seurat$integrated_snn_res.0.6
DimPlot(integrated_seurat, group.by = "integrated_snn_res.0.6", label=TRUE)
DimPlot(integrated_seurat, group.by = "integrated_snn_res.1", label = TRUE)
Now cells per cluster
table(integrated_seurat$integrated_snn_res.0.6, integrated_seurat$orig.ident)
0 1 10 11 12 3 4 5 6 7 8 9
0 215 124 69 1160 349 467 6 26 35 191 68 224
1 82 122 36 994 249 173 1 8 23 156 65 209
2 86 103 21 728 211 360 10 17 23 86 90 177
3 102 91 43 696 290 224 9 31 31 122 71 133
4 155 350 27 12 430 36 21 45 115 52 124 378
5 79 82 44 670 222 244 3 13 31 103 37 132
6 90 8 24 648 37 134 12 12 10 151 12 5
7 108 10 21 624 23 104 4 8 5 95 18 13
8 82 30 35 226 83 176 3 7 21 97 23 28
9 10 21 45 4 263 30 10 33 45 33 14 21
10 6 28 9 52 80 29 6 18 9 8 18 36
11 1 0 0 6 63 182 4 3 0 0 0 1
12 5 2 0 6 56 6 3 11 0 2 8 56
table(integrated_seurat$integrated_snn_res.1, integrated_seurat$orig.ident)
0 1 10 11 12 3 4 5 6 7 8 9
0 185 114 63 1022 304 424 5 21 33 172 54 202
1 131 95 49 816 316 259 10 33 32 140 82 147
2 86 101 22 712 211 357 10 18 22 84 94 177
3 79 85 44 672 221 247 2 13 30 104 38 132
4 48 109 17 606 205 147 1 7 17 56 49 205
5 90 8 24 648 37 134 12 12 10 151 12 5
6 108 10 21 632 23 105 5 8 5 95 19 13
7 7 169 2 10 352 7 12 31 41 6 45 212
8 148 188 25 4 94 29 9 16 75 47 81 175
9 35 11 18 402 46 24 0 2 6 100 11 4
10 10 21 45 4 262 30 10 32 47 33 14 19
11 58 10 29 68 21 146 1 5 14 70 5 7
12 24 20 6 162 62 29 2 2 7 28 18 21
13 6 28 9 56 82 29 6 18 9 8 18 36
14 1 0 0 6 63 192 4 3 0 0 0 1
15 5 2 0 6 57 6 3 11 0 2 8 57
Which cells match to which subject?
From Michaels correlation:
5+5
[1] 10
unique(seu$Genotype_ID)
[1] "28_CH79DIVUZHD100462" "22_CH47DIVUZHD100456"
[3] "4_CH96GSAUZHD100576" "19_CH31DIVUZHD100453"
[5] "unassigned" "29_CH52DIVUZHD100463"
[7] "saliva_mr-023__saliva_mr-023_" "23_CH20DIVUZHD100457"
[9] "32_CH97GSAUZHD100946" "3_CH26GSAUZHD100575"
Now make a table of the assigned cell counts
table(seu$souporcell_assignment, seu$Genotype_ID)
19_CH31DIVUZHD100453 22_CH47DIVUZHD100456 23_CH20DIVUZHD100457
0 0 1021 0
1 0 0 971
10 0 0 0
11 0 0 0
12 2356 0 0
3 0 0 0
4 0 0 0
5 0 0 0
6 0 0 0
7 0 0 0
8 0 0 0
9 0 0 0
28_CH79DIVUZHD100462 29_CH52DIVUZHD100463 3_CH26GSAUZHD100575
0 0 0 0
1 0 0 0
10 0 0 0
11 5826 0 0
12 0 0 0
3 0 0 0
4 0 0 0
5 0 0 0
6 0 0 348
7 0 1096 0
8 0 0 0
9 0 0 0
32_CH97GSAUZHD100946 4_CH96GSAUZHD100576 saliva_mr-023__saliva_mr-023_
0 0 0 0
1 0 0 0
10 374 0 0
11 0 0 0
12 0 0 0
3 0 2165 0
4 0 0 0
5 0 0 0
6 0 0 0
7 0 0 0
8 0 0 0
9 0 0 1413
unassigned
0 0
1 0
10 0
11 0
12 0
3 0
4 92
5 232
6 0
7 0
8 548
9 0